1. Field of the Invention
The present invention relates to the field of network high availability and more particularly to load balance optimization in a network switch.
2. Description of the Related Art
The data center has changed over time from a mainframe centric environment requiring dozens of skilled technologists to ensure the ongoing operation of the mainframe, to a complex environment of many different server computing platforms coupled to one another over sophisticated data communications networks. Initially a resource only available to the wealthiest of organizations, recent advances in the mass production of personal computers has provided access to data center technologies at a reasonable cost. Generally facilitated by a rack, the modern data center involves the arrangement of a multiplicity of personal computers in one or more racks coupled together according to conventional network protocols.
Access to the data center resource for the average organization is not without its cost. In particular, the arrangement of multiple computing platforms in a rack environment exposes the data center to many points of failure requiring substantial redundancy in hardware resources. Additionally, the sheer energy consumption by a cluster of computing hosts in a data center can become noticeably large. The physical consumption of space in the data center by an arrangement of computers can result in a nearly unmanageable environment. All told, the arrangement of ordinary computers in a rack environment within the data center can be unwieldy and an undesirable management challenge.
Addressing the unwieldy and unreliable nature of rack-mounted ordinary computers, blade server solutions have become pervasive in more sophisticated data centers. In the blade center environment, different computing platforms can be arranged into blades and coupled to one another across a mid-plane in a single chassis. The mid-plane can provide access to a unified power source, input output (I/O) devices and even removable media drives. In this way, the blades need not include or manage a power supply or commonly used drives within the blades themselves resulting in substantial power savings, a reduced footprint and overall lower total cost of ownership. Additionally, failover concerns can be met through the hot-swappable nature of the blades in the chassis.
Blade groupings within a single chassis provide a natural hardware platform for high availability application designs. High availability refers to the load balancing of workloads to ensure an optimal utilization of application resources. Load balancing has proven especially effective in handling request-response styled workloads common in interactions with Web based applications. In the typical software load balancing scenario, inbound workloads are passed into different application instances in a round robin fashion in order to distribute the aggregate load experienced by the load balanced system. More intelligent load balancing designs track the availability of different application server instances in different computing hosts to identify those instances able to support an inbound workload.
Analogously, load balancing has been applied to the network environment in order to select different hardware platforms to process inbound workloads to ensure high availability. As in the case of software load balancing, in network load balancing, workloads can be dispersed in a round robin fashion. Alternatively, it is well known to monitor transport control protocol (TCP)/Internet protocol (IP) traffic and network throughput to determine which hardware platform is to receive in inbound workload. Notably, network load balancing has been implemented in the context of blade groupings in which a centralized workload controller selects blades in the blade grouping to process an inbound workload. When implemented in blade groupings, however, network load balancing remains limited to considering TCP/IP traffic and network throughput when determining how to allocate inbound workloads.